most useful skills for civil engineers